import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False

products = ['口红', '面膜', '隔离', '防晒', '精华', '面霜']
target_sales = [700, 500, 600, 900, 600, 600]
actual_sales = [653, 523, 648, 856, 714, 785]

#创建柱状图
plt.figure(figsize=(12, 6))

#目标销量柱状图
plt.bar(products, target_sales, color='none', edgecolor='black', width=0.6, label='目标销量')

#实际销量柱状图，宽度小一些，蓝色填充，白色外框
actual_bars = plt.bar(products, actual_sales, color='skyblue', edgecolor='white', width=0.4, label='实际销量')

#在每个柱状图上方加上实际销量的标签
for bar in actual_bars:
    yval = bar.get_height()
    plt.text(bar.get_x() + bar.get_width()/2, yval, int(yval), va='bottom', ha='center', color='black')

# 添加标题和标签
plt.title('目标销量与实际销量柱状图')
plt.xlabel('商品')
plt.ylabel('销量')
plt.legend()

# 隐藏y轴的刻度线
plt.gca().yaxis.set_major_locator(plt.NullLocator())

#plt.savefig('D:/python charm/01/可视化/第二章/图片/目标柱形图.png')

# 显示图表
plt.show()